package com.app.biz.domain;

import com.app.common.annotation.Excel;
import com.app.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 重点产品调度对象 operation_focus_product
 * 
 * @author ZhouS
 * @date 2024-01-18
 */
public class OperationFocusProduct extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private String baseId;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String productId;

    /** 计量单位 */
    @Excel(name = "计量单位")
    private String measurementUnit;

    /** 本月数 */
    @Excel(name = "本月数")
    private String currentMonthAmount;

    /** 本月止累计 */
    @Excel(name = "本月止累计")
    private String monthAccumulated;

    /** 本月比上月增长 */
    @Excel(name = "本月比上月增长")
    private String monthGrowthRate;

    /** 本月比同月增长 */
    @Excel(name = "本月比同月增长")
    private String yearGrowth;

    /** 本月止累计比同期累计增长 */
    @Excel(name = "本月止累计比同期累计增长")
    private String monthGrowth;

    /** 年月 */
    @Excel(name = "年月")
    private String yearMonth;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date baseCreateTime;
    /** 产品名称 */
    private String productName;

    /** 是否存在子节点 */

    private String haveLeft;
    /** 父级id */
    private String parentId;

    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    public String getHaveLeft() {
        return haveLeft;
    }

    public void setHaveLeft(String haveLeft) {
        this.haveLeft = haveLeft;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public void setBaseId(String baseId)
    {
        this.baseId = baseId;
    }

    public String getBaseId() 
    {
        return baseId;
    }
    public void setProductId(String productId) 
    {
        this.productId = productId;
    }

    public String getProductId() 
    {
        return productId;
    }
    public void setMeasurementUnit(String measurementUnit) 
    {
        this.measurementUnit = measurementUnit;
    }

    public String getMeasurementUnit() 
    {
        return measurementUnit;
    }
    public void setCurrentMonthAmount(String currentMonthAmount) 
    {
        this.currentMonthAmount = currentMonthAmount;
    }

    public String getCurrentMonthAmount() 
    {
        return currentMonthAmount;
    }
    public void setMonthAccumulated(String monthAccumulated) 
    {
        this.monthAccumulated = monthAccumulated;
    }

    public String getMonthAccumulated() 
    {
        return monthAccumulated;
    }
    public void setMonthGrowthRate(String monthGrowthRate) 
    {
        this.monthGrowthRate = monthGrowthRate;
    }

    public String getMonthGrowthRate() 
    {
        return monthGrowthRate;
    }
    public void setYearGrowth(String yearGrowth) 
    {
        this.yearGrowth = yearGrowth;
    }

    public String getYearGrowth() 
    {
        return yearGrowth;
    }
    public void setMonthGrowth(String monthGrowth) 
    {
        this.monthGrowth = monthGrowth;
    }

    public String getMonthGrowth() 
    {
        return monthGrowth;
    }
    public void setYearMonth(String yearMonth) 
    {
        this.yearMonth = yearMonth;
    }

    public String getYearMonth() 
    {
        return yearMonth;
    }
    public void setBaseCreateTime(Date baseCreateTime) 
    {
        this.baseCreateTime = baseCreateTime;
    }

    public Date getBaseCreateTime() 
    {
        return baseCreateTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("baseId", getBaseId())
            .append("productId", getProductId())
            .append("measurementUnit", getMeasurementUnit())
            .append("currentMonthAmount", getCurrentMonthAmount())
            .append("monthAccumulated", getMonthAccumulated())
            .append("monthGrowthRate", getMonthGrowthRate())
            .append("yearGrowth", getYearGrowth())
            .append("monthGrowth", getMonthGrowth())
            .append("yearMonth", getYearMonth())
            .append("baseCreateTime", getBaseCreateTime())
            .toString();
    }
}
